from abc import ABCMeta

from app.libs.enums import NetWorkType


# dalian-ctc1 - 大连电信1
# suqian-cuc1 - 宿迁联通1
# zhuzhou-cuc1 - 株洲联通1
# hengyang-ctc1 - 衡阳电信1
# nanchang-ctc1 - 南昌电信1
# tianjin-ctc1 - 天津电信1
# chengdu-cmc1 - 成都移动1
# xiangyang-cmc1 - 襄阳移动1
# wuhan2-ctc1 - 武汉电信1 - ipv4
# kunming-ctc1 - 昆明电信1 - ipv4
# chongqing-cuc1 - 重庆联通1 - ipv4
# beijing-cuc1 - 北京联通1 - ipv4
# huaian-cuc1 - 淮安联通
# fuzhou-ctc1 - 福州电信
# shijiazhuang-cmc1 - 石家庄移动
# 标识 ipv4 的只支持IPV4，其他为双栈


class BaseAreaNode(ABCMeta):
    area = ''
    network_type = ''
    display_name = {'zh_cn': ''}


class Dalian(BaseAreaNode):
    area = 'dalian-ctc1'
    network_type = NetWorkType.v4v6.value
    display_name = {'zh_cn': '大连电信1'}


# class Suqian(BaseAreaNode):
#     area = 'suqian-cuc1'
#     network_type = NetWorkType.v4v6.value
#     display_name = {'zh_cn': '宿迁联通1'}


class Zhuzhou(BaseAreaNode):
    area = 'zhuzhou-cuc1'
    network_type = NetWorkType.v4v6.value
    display_name = {'zh_cn': '株洲联通1'}


# class Hengyang(BaseAreaNode):
#     area = 'hengyang-ctc1'
#     network_type = NetWorkType.v4v6.value
#     display_name = {'zh_cn': '衡阳电信1'}


class Nanchang(BaseAreaNode):
    area = 'nanchang-ctc1'
    network_type = NetWorkType.v4v6.value
    display_name = {'zh_cn': '南昌电信1'}


class Tianjin(BaseAreaNode):
    area = 'tianjin-ctc1'
    network_type = NetWorkType.v4v6.value
    display_name = {'zh_cn': '天津电信1'}


# class Xiangyang(BaseAreaNode):
#     area = 'xiangyang-cmc1'
#     network_type = NetWorkType.v4v6.value
#     display_name = {'zh_cn': '襄阳移动1'}


class Chengdu(BaseAreaNode):
    area = 'chengdu-cmc1'
    network_type = NetWorkType.v4v6.value
    display_name = {'zh_cn': '成都移动1'}


class Wuhan2(BaseAreaNode):
    area = 'wuhan2-ctc1'
    network_type = NetWorkType.v4.value
    display_name = {'zh_cn': '武汉电信1'}


# class Kunming(BaseAreaNode):
#     area = 'kunming-ctc1'
#     network_type = NetWorkType.v4.value
#     display_name = {'zh_cn': '昆明电信1'}


# class Chongqing(BaseAreaNode):
#     area = 'chongqing-cuc1'
#     network_type = NetWorkType.v4.value
#     display_name = {'zh_cn': '重庆联通1'}
#
#
# class Beijing(BaseAreaNode):
#     area = 'beijing-cuc1'
#     network_type = NetWorkType.v4.value
#     display_name = {'zh_cn': '北京联通1'}

# class Xian(BaseAreaNode):
#     area = 'xian2-ctc1'
#     network_type = NetWorkType.v4.value
#     display_name = {'zh_cn': '西安电信'}


# class Nanchang2(BaseAreaNode):
#     area = 'nanchang2-cuc1'
#     network_type = NetWorkType.v4v6.value
#     display_name = {'zh_cn': '南昌联通'}


class Huaian(BaseAreaNode):
    area = 'huaian-cuc1'
    network_type = NetWorkType.v4v6.value
    display_name = {'zh_cn': '淮安联通'}


class FuZhouCtc1(BaseAreaNode):
    area = 'fuzhou-ctc1'
    network_type = NetWorkType.v4v6.value
    display_name = {'zh_cn': '福州电信'}


class ShiJiaZhuangCmc1(BaseAreaNode):
    area = 'shijiazhuang-cmc1'
    network_type = NetWorkType.v4v6.value
    display_name = {'zh_cn': '石家庄移动'}
